<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
<!-- 无语义的命名，不推荐 -->
<div class="a1">box1</div>
<div class="a2">box2</div>
<div class="a3">box3</div>
<div class="a4">box4</div>

<script>
// 标识符（变量 函数 属性 参数）命名规范：有语义，见名知意
// 1.第一个字符必须是 字母、下划线_、美元符号$
// var 1name = '张三'; // 错误的命名，不能以数字开头

// 2.其他字符可以是数字、字母、下划线、美元符号
// var name1 = '张三';// 合法命名
// var name2 = '李四';// 合法命名

// 3.中间不能含义空格
// var user name = '海静'; // 错误的命名，中间有空格

// 4.不能使用 关键字 或 保留字 命名
// 关键字：是ECMA定义语法语句时使用的名字
// 如：return  break typeof in of new this ....
// var break = 123;// 错误的命名，使用关键字命名
// var new = 456;// 错误的命名，使用关键字命名

// 保留字：ECMA保留的字词，以后会作为关键字使用
// 如：class  import static long int ....
// var class = '3年5班';// 错误的命名，使用保留字命名

// 5.遵守一些命名原则：（推荐）
// 驼峰命名法（小驼峰）：多个单词时，从第二个单词开始，首字母大写
// var userName = '老王';

// 帕斯卡命名法（大驼峰）：多个单词时，每个单词首字母都大写
// var UserName = '小王';

// 下划线命名法：多个单词之间使用下划线连接
// var user_name = '小张';

// 匈牙利命名法：变量名中包含变量数据类型的标志
// var num_user_age = 23;
// var strUserName = '静静';

// 具体使用哪种命名原则，根据团队选择决定

</script>
</body>
</html>